PHLEGM v4 NES boot diagnostics / ConsolePrint conditional fix

Observed with legacy 1942.nes:
- Header recovery correctly resolves mapper 0/NROM.
- Raw header is: 4E 45 53 1A 02 01 00 44 69 73 6B 44 75 64 65 21.
- The image size is exactly 16 + 32768 PRG + 8192 CHR bytes, so no trainer or trailing payload exists.
- Reset vector $BF90 is within the mapped NROM address range $8000-$FFFF.

The previous checkpoint emitted contradictory lines (submapper on iNES 1.0, a zero-byte trailing warning, a trainer line with no trainer flag, and an out-of-range warning for $BF90). The cartridge state was not necessarily wrong: ConsolePrint is a multi-statement macro, so using `If condition Then ConsolePrint ...` only guarded the first expanded statement and allowed the remainder of the macro to execute unconditionally.

This checkpoint converts every single-line conditional ConsolePrint call in the v4 source tree to a block IF/END IF. It also logs the cartridge mapper and resulting PC on power-on, and logs a runtime VM fault with PC/instruction/cycle counts if normal execution halts.

These diagnostics intentionally do not fabricate a CPU/PPU diagnosis before execution evidence exists.
